package com.zimmur.app.mocolink.dao;

import java.util.List;

import org.apache.ibatis.annotations.Param;

import com.zimmur.app.mocolink.domain.model.GoodsBrand;
import com.zimmur.app.mocolink.domain.model.GoodsBrandExample;
import com.zimmur.app.mocolink.domain.param.GoodsBrandReqParam;
import com.zimmur.app.mocolink.domain.vo.GoodsBrandInfo;

public interface GoodsBrandMapper {
    int countByExample(GoodsBrandExample example);

    int deleteByExample(GoodsBrandExample example);

    int deleteByPrimaryKey(Integer id);

    int insert(GoodsBrand record);

    int insertSelective(GoodsBrand record);

    List<GoodsBrand> selectByExample(GoodsBrandExample example);

    GoodsBrand selectByPrimaryKey(Integer id);

    int updateByExampleSelective(@Param("record") GoodsBrand record, @Param("example") GoodsBrandExample example);

    int updateByExample(@Param("record") GoodsBrand record, @Param("example") GoodsBrandExample example);

    int updateByPrimaryKeySelective(GoodsBrand record);

    int updateByPrimaryKey(GoodsBrand record);

	/**
	* <p>Title: queryEntireBrand</p>
	* <p>Description: 查询所有品牌</p>
	* @return
	*/
	List<GoodsBrandInfo> queryEntireBrand();

	/**
	* <p>Title: selectByMuchParam</p>
	* <p>Description: 分页查询商品品牌</p>
	* @param brandParam
	* @return
	*/
	List<GoodsBrand> selectByMuchParam(@Param("param") GoodsBrandReqParam brandParam);

	/**
	* <p>Title: countByParam</p>
	* <p>Description: 查询商品品牌总记录数</p>
	* @param brandParam
	* @return
	*/
	int countByParam(@Param("param")GoodsBrandReqParam brandParam);
}